Orientation angle detector

ABSTRACT

An orientation angle detector using gyroscopes ( 301-303 ) for detecting X-, Y- and Z-angular velocities which are time-integrated ( 60 ) to produce pitch, roll and yaw angles (γ, β, α) of the orientation. Two accelerometers ( 403, 404 ) are used to obtain tentative pitch and roll angles in order to correct the pitch and roll angles, and two terrestrial magnetometers ( 401, 402 ) are used to obtain a tentative yaw angle so as to correct the yaw angle. When the tentative pitch, roll and yaw angles are defined accurate ( 50 ), the integrated pitch, roll and yaw angles are corrected ( 60 ) by the tentative pitch, roll and yaw angles.

This application is a U.S. National Phase Application under 35 USC 371of International Application PCT/JP99/03936 (published in Enqlish) filedJul. 22, 1999.

TECHNICAL FIELD

This invention relates to an orientation angle detector using gyroscopesand, in particular, to compensation or correction of orientation anglemeasured by the, gyroscopes in such an orientation angle detector.

BACKGROUND ART

In the prior art, an orientation angle detector is used for headtracking in virtual environment, augmented reality and teleoperatorsystems using head mounted displays (HMDs). It can also be used as aninput device for computers.

A known three dimensional (3-D) orientation angle detector comprisesthree gyroscopes (which will be referred to as “rate gyros”) disposed inthree orthogonal axes on a moving body to obtain three orthogonalangular rates or velocities. The orthogonal angular rates are integratedto produce three angular factors representing the orientation angle.The, orientation angle, is usually represented by X-Y-Z Euler's angle.θ=(α, β, γ). The known orientation angle detector is disclosed in apaper by Yamashita et al, entitled “Measurement of Human Head Motionusing A Three-Dimensional Posture Angle Sensor”, National ConventionRecord of I.E.E. Japan, Vol. 3 (1997), p.p. 304-305.

In order to compensate errors integrated in integration of the angularvelocities measured by the rate gyros, it is also known, as is alsodisclosed in the paper mentioned above, to use three accelerometerswhich are also disposed in the same three orthogonal axes to measureacceleration in the three orthogonal directions. Another set of threeangular factors representing the orientation angle is calculated fromthe measured acceleration, and is used for estimation and correction ofthe orientation angle measured by the rate gyros.

Fiber optics gyroscopes (FOGs) and semiconductor accelerometers areusually used for the rate gyros and the accelerometers. The FOG isexcellent in its accuracy but is very expensive. A Coriolis vibratorygyroscope known as a piezoelectric vibratory gyroscope is economicallyuseful because of its low cost but is low in its accuracy.

It is an object of this invention to provide an orientation angledetector which has excellent-accuracy and which is simple in structure,and which can use FOGs for the rate gryos but can also use Coriolisvibratory gryoscopes to lower the cost of the detector withoutsignificant degradation of accuracy in comparison with use of FOGs.

SUMMARY OF THE INVENTION

According to this invention, an orientation angle detector is providedwhich comprises a plurality of gyroscopes disposed in parallel with aplurality of orthogonal axes (Xs-Zs) defining a detector co-ordinate onthe detector, respectively, for measuring angular velocities (Jx, Jy,Jz) around respective axes (Xs-Zs), a motion angle calculator coupled tothe plurality of gryoscopes for calculating a motion angle (ΔX, ΔY, ΔZ)from the angular velocities (Jx, Jy, Jz), at least one accelerometerdisposed in parallel with at least one of the orthogonal axes (Xs-Zs)for measuring acceleration (Ax, Ay), a static angle calculator coupledto the at least one accelerometer for calculating a static angle (R, P)from the acceleration (Ax, Ay) and an orientation angle calculatorcoupled to the motion angle calculator and the static angle calculatorfor integrating the motion angle (ΔX, ΔY, ΔZ) to an integrated angle andcalculating an orientation angle (α, β, γ) from the integrated angle andthe static angle (R, P), wherein the orientation angle (α, β, γ) is anangular difference between the detector co-ordinate (Xs-Ys-Zs) and areference co-ordinate (X-Y-Z) in a space including the detector, whereintwo magnetometers are disposed in parallel with two fo the plurality oforthogonal axes (Xs, Ys) to measure terrestrial magnetic components (MX,My) in the two of the plurality of axes (Xs, Ys) and wherein the staticangle calculator is coupled to the two magnetometers for calculating anazimuth from the terrestrial magnetic components (Mx, My) to producefrom the azimuth an azimuthal deviation angle Φ from the referenceco-ordinate (X-Y-Z) as an additional factor of the static angle (R, P).

Further, according to this invention, orientation angle detectors asdescribed in dependent claims.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a schematic view illustrating of disposition of rate gyros,accelerometers, and terrestrial magnetometers in an orientation angledetector according to an embodiment of this invention;

FIG. 2 is a schematic view illustrating a relationship between a spatial3-D reference co-ordinate and a 3-D co-ordinate of the detector itselfafter moved from the reference co-ordinate;

FIG. 3 is a schematic block circuit diagram of the orientation angledetector according to an embodiment of this invention;

FIG. 4 is a schematic block circuit diagram of a static angle calculatorin the orientation angle detector of FIG. 3;

FIG. 5 is a schematic view illustrating use of the orientation angledetector in a HMD;

FIG. 6 is a schematic block circuit diagram of a high-pass filtercorrector which can be used for correction of each of high-pass filtersin the orientation angle detector of FIG. 3;

FIG. 7 shows signal waveforms at various points in FIG. 6;

FIG. 8 is a schematic block diagram of a digital filter device which isused in place of each of the high-pass filters in the orientation angledetector of FIG. 3;

FIG. 9 is a schematic block circuit diagram of an IIR digital high-passfilter in the high-pass filter device of FIG. 8;

FIG. 10 shows signal waveforms at various points in FIG. 8;

FIGS. 11A-11C show input and output signals at different conditions ofthe high-pass filter device of FIG. 8;

FIG. 12 is a schematic view illustrating disposition of rate gyros,accelerometers, and terrestrial magnetometers in an orientation angledetector according to another embodiment of this invention;

FIGS. 13A and 13B are a development view and a bent view of a rate gyroassembly which can be used in the orientation angle detectors shown inFIGS. 1-12;

FIG. 14 is a schematic view illustrating disposition of rate gyros, anaccelerometer, and terrestrial magnetometers in an orientation angledetector according to another embodiment of this invention; and

FIG. 15 is a schematic block circuit diagram of the orientation angledetector of FIG. 14.

BEST MODES FOR CARRYING OUT THE INVENTION

Now, referring to FIGS. 1-3, description will be made as regards anorientation angle detector according to one embodiment of this inventionshown therein. The orientation angle detector of this embodiment isdirected to one for detecting an orientation of an object in a threedimensional (3-D) space.

The orientation angle detector shown in the figures comprises firstthrough third gyroscopes 301-303 disposed in parallel with threeorthogonal axes Xs, Ys and Zs defining a detector co-ordinate on thedetector, respectively, for measuring first through third angularvelocities Jx, Jy, and Jz around respective axes Xs, Ys, and Zs.

A motion angle calculator 310 is coupled to the first through thirdgyroscopes 301-303 for calculating a motion angle (ΔX, ΔY, ΔZ) from thefirst through third angular velocities Jx, Jy, and Jz. First and secondaccelerometers 403 and 404 are disposed in parallel with two theorthogonal axes Xs, and Ys for measuring first and second accelerationAx and Ay. These accelerometers are for measuring the gravityacceleration.

A static angle calculator 405 coupled-to the first and secondaccelerometers 403 and 404 for calculating a static angle (R, P) fromthe acceleration Ax and Ay.

An orientation angle calculator 60 is coupled to the motion anglecalculator 310 and the static angle calculator 405 for integrating themotion angle (ΔX, ΔY, ΔZ) to an integrated angle (ΣΔX, ΣΔY, ΣΔZ) andcalculating an orientation angle α, β, γ) from the integrated angle andthe static angle (R, P). The orientation angle (α, β, γ) is an angulardifference between the detector co-ordinate (Xs-Ys-Zs) and a referenceco-ordinate (X-Y-Z) in a space including the detector.

Further, first and second magnetometers 401 and 402 are disposed inparallel with two of the plurality of orthogonal axes Xs and Ys tomeasure terrestrial magnetic components Mx and My. The static anglecalculator 405 is coupled to the first and second magnetometers 401 and402 for calculating an azimuth from the terrestrial magnetic componentsMx and My to produce, from the azimuth, an azimuthal deviation angle Φfrom the reference co-ordinate (X-Y-Z) as an additional factor of thestatic angle (R, P).

The orientation angle detector further comprises an orientation anglememory 70 coupled to the orientation angle calculator 60 for storing theorientation angle (α, β, γ). The orientation angle is represented byZ-Y-X Euler's angle which is composed of three components of yaw angle αbeing a rotational angle around Z axis, a pitch angle β being arotational angle around Y axis, and a roll angle γ being a rotationalangle around X axis.

The motion angle has three factors an X-moving angle ΔX around the Xaxis, a Y-moving angle ΔY around the Y axis, and a Z-moving angle ΔZaround Z axis.

While, the static angle calculator 405 calculates a tentative pitchangle P, a tentative roll angle R and a tentative yaw angle Φ as theazimuthal deviation angle from the first and second magnetic detectionsignals Mx and My and the first and second acceleration detectionsignals Ax and Ay. The tentative pitch angle P, the tentative roll angleR and the tentative yaw angle Φ are factors of the static angle.

The orientation angle detector further comprises a static anglecorrection definer 50 for defining accuracy of the static angle (P, R,Φ) to produce a correction signal when the static angle is defined to beaccurate. The orientation angle calculator 60 corrects the integratedangle (ΣΔX , ΣΔY, ΣΔZ) to the orientation angle (α, β, γ).

Referring to FIG. 5, the orientation angle detector is set on a user'shead together with the HMD 100. The detector 20 and the HMD 100 areconnected to a video generator 101 through a cable 102. A video signalis delivered to the HMD 100 from the video generator 101. The user canenjoy the video. When the user moves his head, the orientation angle ofhis head is detected by the orientation angle detector 20 and istransferred to the video generator 101. The video generator 101 changesor modulates the video signal by the orientation angle. Thus, the usercan further modify the video by moving his head.

The first through third gyroscopes 301-303 are preferably Coriolisvibratory gyroscopes having piezoelectric vibrators.

First through third high-pass filters (H-Filter) 304-306 are coupled tothe first through third Coriolis vibratory gyroscopes 301-303 forcanceling offset voltages included in the first through third gyrooutputs Jx, Jy and Jz of the first through Coriolis vibratory gyroscopesto produce first through third filter outputs, respectively.

Each of the first through third high-pass filters 304-306 is designed tohave a cutoff frequency of 0.1 Hz or lower. The high-pass filter havingthe low cutoff frequency is slow from start to stable operationcondition. Therefore, each of the first through third high-pass filters304-306 preferably has a variable cutoff frequency. In the case, thecutoff frequency is adjusted relatively high just after a power switchfor the detector is turned on so as to rapidly bring the filter to thestable operation condition. After being stable in operation, thehigh-pass filter can be adjusted to the low cutoff frequency of 0.1 Hz.

The first through third high-pass filters 304-306 are usually analoguetype high-pass filters. In the case, the orientation angle detectorfurther comprises first through third analogue-to-digital (A/D)convertors 307-309 coupled to the first through third high-pass filters304-306. The first through third analogue-to-digital convertors 307-309sample the first through third filter outputs every sampling intervalsSt, and produce first through third time-serial digital signals,respectively. The motion angle calculator 310 receives the first throughthird time-serial digital signals as incoming first through thirdtime-serial digital signals to produce three time-serial moving anglesignals (ΔX, ΔY, ΔZ) representing the motion angle.

The first through third time-serial moving angle signals representtime-serial X-moving angle ΔX(t), t=n, (n−1), (n−2)), . . . 1,n−(n−1)=St, time serial Y-moving angle ΔY(t), and time-serial ΔZ(t), themotion angle calculator (310) calculates X-moving angle ΔX(n), Y-movingangle ΔY(n) and Z-moving angle ΔZ(n) at t=n according to the followingequation: $\left\lbrack \quad \begin{matrix}{{\Delta X}(n)} \\{\Delta \quad {Y(n)}} \\{\Delta \quad {Z(t)}}\end{matrix} \right\rbrack = \quad \quad {\left\lbrack \quad \begin{matrix}0 & {\tan \quad {\beta \left( {n - 1} \right)}\sin \quad {\gamma \left( {n - 1} \right)}} & {\tan \quad {\beta \left( {n - 1} \right)}\cos \quad {\gamma \left( {n - 1} \right)}} \\1 & {\cos \quad {\gamma \left( {n - 1} \right)}} & {{- \sin}\quad {\gamma \left( {n - 1} \right)}} \\0 & {{- \sin}\quad {{\gamma \left( {n - 1} \right)}/\cos}\quad {\beta \left( {n - 1} \right)}} & {\cos \quad {{\gamma \left( {n - 1} \right)}/\cos}\quad {\beta \left( {n - 1} \right)}}\end{matrix} \right\rbrack \times \left\lbrack \quad \begin{matrix}{{Jx}(n)} \\{{Jy}(n)} \\{{Jz}(n)}\end{matrix}\quad \right\rbrack}$

where β(n−1) and γ(n−1) are the pitch angle β and roll angle γ at t=n−1which are read out from the orientation angle memory 70, Jx(n), Jy(n)and Jz(n) being first through third digital signals of the first throughthird incoming time-serial digital signals at t=n.

The use of the high-pass filter enables to cancel the ofset voltageincluded in the gyro output. However, the filter output suffers from adistortion by action of a capacitor in the filter (at (c) in FIG. 7). Inorder to remove the distortion, the orientation angle detectorpreferably comprises three high-pass filter correction circuits 311coupled between the first through third analogue-to-digital convertors307-309 and the motion angle calculator 310, as shown by dotted lines inFIG. 3. The high-pass filter correction circuits 311 compensate thedistortion accompanied at the first through third high-pass filters andproduce first through third corrected signals. The first through thirdcorrected signals are delivered to the motion angle calculator 310 asthe first through incoming time-serial digital signals.

Each of the high-pass filter correction circuits 311 performscalculation given by the following equation:

J(n)=F(n)+(αt/RC)·ΣF(n)

where J(n) is the corrected signal which is a corresponding one of theincoming time-serial digital signals at t=n. F(n) is the digital valueof the corresponding one of the first through third time-serial digitalsignals at t=n. Δt/RC is a constant value.

Referring to FIG. 6, each of the first through third high-pass filtercorrection circuit 311 comprises an integrator comprising a first adder31101 and a registor 31102 for integrating the digital values of thecorresponding time serial digital signal to hold an integrated value inthe registor 31102. A constant value generator 31103 is provided forgenerating the constant value. A multiplier 31104 is coupled to theregistor 31102 and the constant value generator 31103 for multiplyingthe integrated value by the constant value to produce a multipliedvalue. A second adder 31105 is provided for adding the multiplied valueto the digital values time-serially incoming to produce the correctedsignal.

Referring to FIG. 7, there are shown an input waveform (a) of a drivingvoltage for the Coriolis vibratory gyroscope, an output waveform (b), anoutput waveform (c) of the high-pass filter, and an output waveform (d)of the high-pass filter corrector 311 as described above. As seen fromtwo waveforms (c) and (d), the distortion shown at (c) is removed at(d).

Referring to FIG. 6 again, the high-pass filter correction circuit 311further comprises an offset error compensating circuit 31106-3108 forcompensating an offset error caused by calculation in the integrator31101-31102 and the second adder 31105. The offset error compensatingcircuit comprises an output definer 31106 for observing when thecorrected signal is maintained constant, and defines the offset errorlevel. An error corrector 31107 is coupled to the output definer 31106and produces, in response to the error level, an error correctionsignal. The error correction signal is supplied to the registor 31102which corrects, in turn, the integrated value. A constant valuecorrection circuit 31108 is further coupled to the error corrector 31107and corrects, in response to the error correction signal, the constantvalue of the constant value generator 31103.

Referring to FIG. 7 again, there is shown an output waveform (e) of thehigh-pass filter corrector 311 having the offset error compensatingcircuit 31106-3108. As is seen by comparing waveform (d) and thewaveform (e), the output waveform of the high-pass filter corrector 311is further improved.

The first through third high-pass filters can be of first through thirddigital high-pass filter devices to produce first through thirdtime-serial digital filter outputs, respectivley.

Referring to FIG. 8, each of the first through third digital high-passfilter devices (FIG. 8) comprises an analogue-to-digital convertor 313coupled to a corresponding one of the first through third gyroscopes301-303 for sampling a corresponding one of the first through third gyrooutputs at sampling intervals St to produce a time-serial digitalsignal. A digital filter 315 is coupled to the analogue-to-digitalconvertor 313 for filtering the time-serial digital signal to produce acorresponding one of the first through third time-serial digital filteroutputs. The motion angle calculator 310 receives the first throughthird time-serial digital filter outputs as the first through thirdincoming time-serial digital signals.

The first through third time-serial moving angle signals represent thetime-serial X-moving angle ΔX(t), t=n, (n−1), (n−2), . . . 1, whereSt=n−(n−1), the time serial Y-moving angle ΔY(t), and the time-serialΔZ(t).

An example of the digital filter 315 is an infinite impulse response(IIR) type, for example, shown in FIG. 9. The IIR digital filter 315 hasdelay buffer values P1 and P2.

The digital high-pass filter device (FIG. 8) further comprises apositive/negative definer 316 coupled to an output side of the digitalfilter 315 for defining from the time-serial digital filter output whenthe time-serial digital signal changes between positive or negative toproduce a change signal. A delay buffer value reset circuit 317 iscoupled to the digital filter 315 and the positive/negative definer 316.The delay buffer value reset circuit 317 is responsive to the changesignal to reset the delay buffer values P1 and P2 of the digital filter315.

Referring to FIG. 10, there are shown various waveforms a-d. Waveformsa-c are similar to waveforms shown at (a)-(c) in FIG. 7 and waveform dis a waveform of an output of the digital high-pass filter devicedescribed above in connection with FIGS. 8 and 9. As shown in thewaveform d, the distortion shown by a dotted line, which is present byuse of analogue filter, can be removed by use of the digital high-passfilter device. FIG. 11A shows an input waveform al and an outputwaveform b1 in the digital high-pass filter device described above. Asseen from the figure, a drift is not improved.

The digital high-pass filter device (FIG. 8) further comprises an offsetvalue generator 319 for generating an offset value, a multiplier 320coupled to the offset value generator 319. The multiplier 320 isdisposed to connect the analogue-to-digital convertor 313 with thedigital filter 315. The multiplier 320 is for multiplying thetime-serial digital signal by the offset value. An offset valuecorrecting circuit 318 is coupled to the offset value generator 319 andthe positive/negative definer 316 and is responsive to the change signalto correct the offset value.

In a case where the correction is performed to set the offset value to avalue of the time-time-serial digital filter just before the correction,the input and output waveforms of the digital filter are shown at a2 anda1 in FIG. 11B, respectively.

The correction of the offset value is preferably performed according tothe following equation:

OS(n)=OS(n−1)−m×[OS(n−1)−D(n−1)],

where OS(n) and OS(n−1) are offset values after and before correction,respectively, D(n−1) being a digital signal from the analogue digitalconvertor, and 0<m≦0.5. The correction of the offset value improves thedrift in the output as seen from input and output waveforms a3 and b3 inFIG. 11C.

Referring to FIG. 4; the static angle calculator 405 comprises first andsecond analogue-to-digital convertors 40501 and 40502 coupled to thefirst and second accelerometers 403 and 404. The first and secondanalogue-to-digital convertors 40501 and 40502 sample the first andsecond acceleration detection signals AX and Ay every sampling intervalsSt, and produce first and second time-serial digital accelerationsignals. A tentative pitch angle calculator 40504 is coupled to thefirst analogue convertor 40501, and calculates the tentative pitch angleP from the first time-serial digital acceleration signal. A tentativeroll angle calculator 40503 is coupled to the second analogue-to-digitalconvertor 40502 and the tentative pitch calculator 40504. The tentativeroll angle calculator 40503 calculates the tentative roll angle R fromthe second time-serial acceleration signal and the tentative pitch angleP.

When the first and second time-serial digital acceleration signals arerepresented by Ax(t) and Ay(t), where t=n, n−1, . . . , 1, St=n−(n−1),the tentative pitch angle calculator 40504 and the tentative roll anglecalculator 40503 calculate the tentative pitch angle P and the tentativeroll angle R according to the following equations, respectively;

P(n)=sin⁻¹ Ax(n), and

R(n)=sin⁻¹ [Ay(n)/cos P(n)],

where P(n), R(n), Ax(n) and Ay(n) representing P, R, Ax(t) and Ay(t) att=n.

The static angle calculator 405 further comprises third and fourthanalogue-to-digital convertors 40505 and 40506 coupled to the first andsecond terrestrial magnetometers 401 and 402. The third and fourthanalogue-to-digital convertors 40505 and 40506 sample the first andsecond magnetic detection signals Mx and My every sampling intervals Stto produce first and second time-serial digital magnetic detectionsignals, respectively. A co-ordinate transforming calculator 40507 iscoupled to the third and fourth analogue-to-digital convertors 40505 and40506, the tentative roll angle calculator 40503, and the tentativepitch calculator 40504. The co-ordinate transforming calculator 40507transforms the first and second time-serial digital magnetic detectionsignals into first and second time-serial digital terrestrial magneticcomponent signals representing two corresponding terrestrial magneticcomponents Hx and Hy in the X-Y plane of the reference X-Y-Zco-ordinate. An azimuth calculator 40508 is coupled to the co-ordinatetransforming calculator 40507, and calculates an azimuth ψ from theterrestrial magnetic components Hx and Hy to produce a tentative yawangle Φ as the azimuthal deviation angle. Further, an azimuth memory40512 is coupled to the azimuth calculator 40508 for storing the azimuthψ.

The static angle calculator 405 further comprises a Z-direction magneticcomponent generator 40509-40515 coupled to the third and fourthanalogue-to-digital convertors 40505, 40506. The Z-direction magneticcomponent generator 40509-40515 produces a time-serial digitalZ-direction magnetic component signal Mz from the first and secondtime-serial magnetic detection signals Mx and My, a terrestrialmagnetism Ht previously measured, an initial slant angle θo of a Xs-Ysplane defined by Xs and Ys axes of the detector co-ordinate from the X-Yplane, and a current slant angle θ2 of the Xs-Ys plane from the X-Yplane.

The co-ordinate transforming calculator 40507 calculate the terrestrialmagnetic components Hx and Hy from the first and second time-serialmagnetic detection signals Mx and My, the time-serial digitalZ-direction magnetic component signal Mz, and the tentative pitch androll angles P and R, according to the following equations:Hx(n) = cos [P(n)] × M  x(n) + sin [P(n)] × Mz(n), and$\begin{matrix}{{{Hy}(n)} = \quad {{{\sin \left\lbrack {R(n)} \right\rbrack} \times {\sin \left\lbrack {P(n)} \right\rbrack} \times M\quad {x(n)}} +}} \\{\quad {{{\cos \left\lbrack {R(n)} \right\rbrack} \times {\cos \left\lbrack {P(n)} \right\rbrack} \times {{Mz}(n)}},}}\end{matrix}$

where Hx(n), Hy(n), Mx(n), My(n), Mz(n), P(n) and R(n) represent Hx, Hy,Mx, My, Mz, P and R at t=n.

The azimuth calculator 40508 calculates ψ(n) of the azimuthψ at t=n fromHx(n) and Hy(n) according to the following equation:

ψ(n)=−tan⁻¹ [Hy(n)/Hx(n)].

The azimuth calculator (40508) further calculates Φ (n) of the tentativeyaw angle Φ at t=n from the ψ(n) and an initial azimuth deviation angleψ(0) according to the following equation:

Φ(n)=ψ(n)−ψ(0).

The Z-direction magnetic component generator 40509-40515 comprises aterrestrial magnetism generator (40509-40510) for producing theterrestrial magnetism Ht. A current Z-direction magnetic componentabsolute value calculator 40511 is coupled to the terrestrial magnetismgenerator 40509 and 40510, the third and fourth analogue-to-digitalconvertors 40505 and 40506. The current Z-direction magnetic componentabsolute value calculator 40511 calculates a Z-direction magneticcomponent absolute value |Mz(n)| from the terrestrial magnetism Ht, thecurrent value Mx(n) and My(n) of the first and second time-serialmagnetic detection signals Mx and My at t=n according to the followingequation:

|Mz(n)|=[Ht ² −{Mx(n)² +My(n)²}]^(½).

A current slant angle calculator 40513 is coupled to the orientationangle memory 70 and the azimuth memory 40512 and calculates the currentslant angle θ2.

A sign definer 40514 is coupled to the current slant angle calculator40513 and produces a sign (+or −) of the current Z-direction magneticcomponent Mz(n) from the current slant angle θ2 and the initial slantangle θ0.

A current Z-direction magnetic component calculator 40515 is coupled tothe current Z-direction magnetic component absolute value calculator40511 and the sign definer 40514) and produces the Z-direction magneticcomponent Mz(n).

The terrestrial magnetism generator (40509-40510) comprises an initialterrestrial magnetism memory 40509 selectively coupled to the third andfourth analogue digital convertors 40505 and 40506 through two switchingelements S1, S2, respectively. The initial terrestrial magnetism memory40509 previously stores an initial X-direction, Y-direction andZ-direction terrestrial magnetic components Mx(0), My(0) and Mz(0),which are given from the third and fourth analogue-to-digital convertors40505 and 40506 through the two switch elements S1 and S2 selectivelyturned on at initial time.

A processor 40510 is coupled to the initial terrestrial magnetism memory40509 and processes the initial X-direction, Y-direction and Z-directionterrestrial magnetic components Mx(0), My(0) and Mz(0) into theterrestrial magnetism Ht according to the following equation:

|Ht|=[Mx(0)² +My(0)² +Mz(0)²]^(½).

Thus, the absolute value |Ht|of the terrestrial magnetism is memorizedin the initial terrestrial magnetism memory 40509.

Now, it is described to store the initial X-direction, Y-direction andZ-direction terrestrial magnetic components Mx(0), My(0) and Mz(0) intothe initial terrestrial magnetism memory 40509.

At initial state, the orientation angle detector is, on one hand,positioned so that a particular one of the first and second terrestrialmagnetometers 401 and 402 is in parallel with the Z axis of thereference co-ordinate. Then, a corresponding one of the two switchelements S1 and S2 is turned on to memorize the terrestrial magneticcomponent detected by the particular terrestrial magnetometer (401 or402) in the initial terrestrial magnetism memory 40509 as the initialZ-direction terrestrial magnetic component Mz(0). Thereafter, theorientation angle detector is, on the other hand, positioned so that thefirst and second terrestrial magnetometers 401 and 402 are in parallelwith the X and Y axes of the reference co-ordinate, respectively. Then,the two switch elements S1 and S2 are turned on. As a result, theterrestrial magnetic components detected by the first and secondmagnetometers 401 and 402 are stored in the initial terrestrialmagnetism memory 40509 as the initial X-direction terrestrial magneticcomponent Mx(0) and the initial Y-direction terrestrial magneticcomponent My(0).

The current slant angle calculator 40513 calculates the current slantangle θ2 from an angular value ψ(n−1) of the azimuth ψ at t=n−1 read outfrom the azimuth memory 40512, and roll and pitch angle values β(n−1)and γ(n−1) of the roll and pitch angles β and γ read out from theorientation angle memory 70, according to the following equation:

θ2=sin⁻¹ [aa/(aa ² +cc ²)^(½)],

where, aa=cos γ(n−1)×sin β(n−1)×cos ψ(n−1)×sin ψ(n−1) and cc=cosγ(n−1)×cos β(n−1).

The sign definer 40514 defines, on one hand, the sign as positive (+)when the current slant angle θ2 is larger than the initial slant angleθ0 but is smaller than 90 angular degree, and defines, on the otherhand, the sign as negative (−) when the current slant angle θ2 is equalto or smaller than the initial slant angle θ0 but is larger than −90angular degree.

Returning to FIG. 3, the orientation angle detector further comprises astatic angle correction definer 50 coupled to the static anglecalculator 405 and the orientation angle calculator 60. The static anglecorrection definer 50 is for defining accuracy of the static angle (P,R, Φ) to produce a correction signal. Then, the orientation anglecalculator 60 is responsive to the correction signal to calculate acorrection value. Then, the orientation angle calculator 60 corrects theintegrated value set by the correction value and produces a modifiedvalue set. The modified value set is delivered as the orientation angle(α, β, γ) The orientation angle calculator 60 calculates first throughthird integrated values ΣΔX , ΣΔY and ΣΔZ according to the followingequations:

ΣΔX(n)=γ(n−1)+ΔX(n);

ΣΔY(n)=β(n−1)+ΔY(n); and

ΣΔZ(n)=α(n−1)+ΔZ(n),

where ΔX(n), ΔY(n) and ΔZ(n) are the X-moving angle ΔX , the Y-movingangle ΔY and the Z-moving angle ΔZ, respectively, at a time t=n, andγ(n−1), β(n−1) and α(n−1) are the roll angle γ, the pitch angle β andthe roll angle α, respectively at a time t=n−1. Those γ(n−1), β(n−1) andα(n−1) are readout from orientation angle memory 70.

When the orientation angle calculator 60 receives the correction signal,the orientation angle calculator 60 calculates first through thirdangular errors Ex, Ey and Ez by the following equations:

Ex=ΣΔX(n)−(n);

Ey=ΣΔY(n)−P(n); and

Ez=ΣΔZ(n)−Φ(n).

Then, the orientation angle calculator 60 determines first through thirdcorrection values C1, C2, and C3 as the correction value from the firstthrough third angular errors Ex, Ey and Ez, and calculates the firstthrough third modified values as the roll angle γ, the pitch angle β andthe yaw angle α by the following equations:

γ=ΣΔX(n)−C 1;

β=ΣΔY(n)−C 2; and

α=ΣΔZ(n)−C.

In this connection, the values of C1, C2 and C3 can be selected to besmaller than the first through third angular errors Ex, Ey, and Ez,respectively. Alternatively, the value of C1, C2, and C3 can bedetermined by k1×Ex, k2×y, and k3×Ez, respectively, where k1, k2 and k3are constant values smaller than 1.

The orientation angle detector can preferably be provided with acorrection coefficient generator 80 as shown in the figure. Thecorrection coefficient generator 80 is coupled to the static anglecalculator 405 and the orientation angle calculator 60 and generates aset of first through third coefficients m1, m2 and m3. The first throughthird coefficients m1, m2 and m3 are selected from predetermineddifferent values in response to angular values of the tentative pitchangle P and the tentative roll angle R received from the static anglecalculator 405.

Preferably, the correction coefficient generator 80 has a table as shownin Table 1 below. The table has various sets of the first through thirdcoefficients m1, m2 and m3 previously determined in correspondence toangular values of the tentative pitch angle P and the tentative rollangle R.

Generally, the first through third coefficients m1, m2 and m3 aredetermined relatively low for large angular values of the tentativepitch angle P and the tentative roll angle R.

TABLE 1 R(deg) 0-60 60-70 70-90 P(deg)  0-60 m1 1   m1 0.7 m1 0.3 m2 1  m2 1   m2 1   m3 1   m3 0.7 m3 0.3 60-70 m1 1   m1 0.7 m1 0.3 m2 0.7 m20.7 m2 0.7 m3 0.7 m3 0.7 m3 0.3 70-90 m1 1   m1 0.7 m1 0.3 m2 0.3 m2 0.3m2 0.3 m3 0.3 m3 0.3 m3 0.3

The orientation angle calculator 60 is responsive to the set of firstthrough third coefficients m1, m2 and m3 to modify the first throughthird correction values C1, C2 and C3 by multiplying with the firstthrough third coefficients m1, m2 and m3, respectively.

Now, description will be made as regards the detail of the correctiondefiner 50. The correction definer 50 is provided with a static anglememory 501 for storing the tentative pitch angle P and the tentativeroll angle R received from the static angle calculator 405. Thecorrection definer 50 compares the tentative pitch angle P(n) andtentative roll angle R(n) received at a time t=n with the earliertentative pitch angle P(n−1) and tentative roll angle R(n−1) at t=n−1which are read from the static angle memory 501, and defines thetentative pitch angle P(n) and tentative roll angle R(n) to be accuratewhen the following two equations (1) and (2) are fulfilled,respectively:

|R(n)−R(n−1)|−B≈0  (1); and

|P(n)−P(n−1)|−D≈0  (2),

where B and D are positive values as selected.

In an example, B and D are predetermined as small values nearly equal tozero (0) which the correction definer 50 previously has therein.

In another example, the correction definer 50 is connected to the motionangle calculator 310 and receives the X-moving angle ΔX(n) and theY-moving angle ΔY(n) therefrom. B and D are selected to be the X-movingangle ΔX(n) and the Y-moving angle ΔY(n), respectively.

Further, the correction definer 50 can be made to define accuracy of thetentative yaw angle Φ. The correction definer 50 receives the tentativeyaw angle Φ(t) and the Z-moving angle ΔZ(t) from the static anglecalculator 405 and motion angle calculator 310, respectively. Thetentative yaw angle Φ(t) is stored in the static angle memory 501. Thecorrection angle definer 50 processes the tentative yaw angle Φ(n) andthe Z-moving angle ΔZ(n) at t=n and the yaw angle Φ(n−1) at t=n−1 whichis read from the orientation angle memory 501, according to thefollowing equation (3):

|Φ(n)−Φ(n−1)|−ΔZ(n)≈0  (3).

The correction angle definer 50 defines the tentative yaw angle Φ(n) tobe accurate when the equation (3).

In the correction definer 50, the moving average of the motion angle canbe used for defining the static angle.

The correction angle definer 50 stores in the static angle memory 501the X-moving angle ΔX , the Y-moving angle ΔY and the Z-moving angle ΔZreceived from the motion angle calculator 310 as well as the tentativepitch angle P(n), the tentative roll angle R(n) and the tentative yawangle Φ(n) received from the static angle calculator 405. The correctiondefiner 50 calculates a moving average of variation of the tentativepitch angle P(t), a moving average of variation of the tentative rollangle R(t), a moving average of variation of the tentative yaw angleφ(n), a moving average of the X-moving angle ΔX(t), a moving average ofthe Y-moving angle ΔY(t) and a moving average of the Z-moving angleΔZ(t). Then, the correction definer 50 defines the tentative pitch angleP(n), the tentative roll angle R(n) and the tentative yaw angle Φ(n) tobe accurate when the following two equations (4), (5) and (6) arefulfilled, respectively:

[R(n)−R(n−1)]/C−[ΔX(n)+ΔX(n−1)+ . . . +ΔX(n−C+1)]/C≈0  (4);

[P(n)−P(n−1)]/C−[ΔY(n)+ΔY(n−1)+ . . . +ΔY(n−C+1)]/C≈0  (5):

and

[Φ(n)−Φ(n−1)]/C−[ΔZ(n)+ΔZ(n−1)+ . . . +ΔZ(n−C+1)]/C≈0  (6).

As a result of the defining the accuracy of the static angle, thecorrection definer 50 produces the correction signal when at least oneof the tentative pitch angle P(n), and the tentative roll angle R(n) isdefined accurate, and the correction definer 50 produces anon-correction signal when none of the tentative pitch angle and thetentative roll angle R(n) is defined accurate. In response to thenon-correction signal, the orientation angle calculator 60 is toproduces the integrated value set of ΣΔX(n), ΣΔY(n) and ΣΔZ(n) as theorientation angle (γ, β, α).

In execution to define accuracy of the tentative yaw angle Φ(n), thecorrection definer 50 also produces the correction signal when thetentative yaw angle Φ(n) is defined accurate but in no relation towhether or not the tentative pitch angle and the tentative roll angleR(n) are defined accurate. When none of the tentative pitch angle, thetentative roll angle R(n) and the yaw angle Φ(n) is defined accurate,the correction definer 50 produces the non-correction signal.

In a different design, the correction definer 50, upon defining accuracyof particular ones of the tentative roll angle R, the tentative pitchangle P and the tentative yaw angle Φ, can produce, as the correctionsignal, an indication signal representative of that particular ones ofthe tentative roll angle R, the tentative pitch angle P and thetentative yaw angle Φ which are defined accurate. In response to theindication signal, the orientation angle calculator 60 modifies specificones of the first through third integrated values ΣΔX(n), ΣΔY(n) andΣΔZ(n) corresponding to the particular ones of the tentative roll angleR, the tentative pitch angle P and the tentative yaw angle Φ by use ofthe tentative pitch angle P, the tentative roll angle R and thetentative yaw angle Φ to produce specific modified values. Then, theorientation angle calculator 60 delivers the specific modified values asthat specified ones of the roll angle γ, the pitch angle β and the yawangle α, respectively, which are corresponding to the specific ones ofthe first through third integrated values ΣΔX(n), ΣΔY(n) and ΣΔZ(n). Theorientation angle calculator 60 also delivers the remaining ones otherthan the specific ones of the first through third integrated valuesΣΔX(n), ΣΔY(n) and ΣΔZ(n) as the remaining ones other than the specifiedones of the roll angle γ, the pitch angle β and the yaw angle α.

Referring to FIG. 12, an orientation angle detector according to anotherembodiment of this invention uses a third accelerometer 406 disposed inparallel with Zs-axis of the detector co-ordinate to produce a thirdacceleration detection signal Az. In this embodiment, the static anglecalculator 405 further comprises an additional analogue-to-digitalconvertor 4061, as shown by dotted lines in FIG. 4.

The additional analogue-to-digital convertor 4061 is coupled to thethird accelerometer 406 and samples the third acceleration detectionsignal Az every sampling intervals St to produce a third time-serialdigital acceleration signal. The third time-serial acceleration signalis additionally used in the roll angle calculator 40504 for calculatingthe tentative roll angle R.

The first, second and third time-serial digital acceleration signals arerepresented by Ay(t) and Az(t), where t=n, n−1, . . . 1, St=n−(n−1), thetentative roll angle calculator 40503 calculate the tentative roll angleR according to the following equations, respectively;

when Az>0,

R(n)=sin⁻¹ [Ay(n)/cos P(n)],

when Az<0 and Ax>0

R(n)=π−sin⁻¹ [Ay(n)/cos P(n)], and

when Az<0 and Ax<0,

R(n)=−π−sin⁻¹ [Ay(n)/cos P(n)],

where P(n), R(n), Ay(n) and Az(n) representing P, R, Ax(t) Ay(t) andAz(t) at t=n.

In the present embodiment, the static angle correction definer 50receives the first, second and third acceleration detection signals (Ax,Ay, Az) as shown by dotted lines in FIGS. 3 and 4. From the first,second and third acceleration detection signals (Ax, Ay, Az), thecorrection definer 50 calculates an absolute value of a compositeacceleration vector of acceleration of Xs-axis direction, Ys-axisdirection, and Zs-axis direction, according to the following equation:

|A|=(Ax+Ay+Az)^(½).

The correction definer (50) produces the correction signal when the|A|≈1G, G being the gravity acceleration.

Another aspect of this invention provides a circuit assembly includingthe Coriolis vibratory gyroscopes which enables to simplify assemblingthe orientation angle detector using the Coriolis vibratory gyroscopes.

Referring to FIG. 13A and 13b, three piezoelectric ceramic vibrators ofthe first through third gyroscopes gyroscope 301-303 are fixedly mountedon three sections of a flexible printed circuit board 201, respectively.The flexible printed circuit board 201 is bent to form a right-angledtriangular cylinder, as shown in FIG. 11B, having a first and a secondside plate sections perpendicular to each other and a third side platesection to form a right-angled triangular cylinder. The flexible printedcircuit board 201 has two slits 202 and 203 at bent portions so as tofacilitate the bending operation.

After mounting the first through third piezoelectric ceramic vibrators301, 302, and 303 on the flexible printed circuit 201, the flexibleprinted circuit board 201 is bent to form the triangular cylinder. Then,the first through third piezoelectric ceramic vibrators of the firstthrough third gyroscopes 301, 302, and 303 are automatically disposed inparallel with Xs-axis, Y-axis and Zs-axis of the detection co-ordinate.

The flexible printed circuit board 201 has an end edge of theright-angled triangular cylinder which extends on a single plane, andterminals 204 extending from the end edge. The terminals 204 are forelectrical connection with external electric parts. The third side platesection extends in a direction opposite to the end edge beyond the firstand second side plate sections so that the third gyroscope 303 in theZ-axis is reliably mounted on the flexible printed circuit board.

In place of the single flexible printed circuit board 201, three printedcircuit boards can be used for the first through third side plateportions, respectively.

In the Coriolis vibratory gyroscopes used in the orientation angledetector according to this invention, any type piezoelectric vibratorcan be used but is preferably made of non-magnetic piezoelectricmaterials of, for example, piezoelectric ceramics, piezoelectric singlecrystal material, and silicon.

In certain applications of the orientation angle detector, two factors(for example, pitch and yaw angles) of the orientation angle are onlyrequired without use of the other factor (roll angle). Anotherembodiment of this invention is directed to a two-dimensional (2-D)orientation angle detector which is used in such applications.

Referring to FIGS. 14 and 15, the 2-D orientation angle detector showntherein is similar to the 3-D orientation angle detector shown in FIGS.1-11, except that one of three gyroscopes and parts and functionsaccompanied thereto are omitted. The similar parts are represented bythe same reference symbols with or without prim (′).

The 2-D orientation angle detector delivers only the yaw angle α and thepitch angle β as a 2-D orientation angle. First and second gyroscopes302 and 303 are disposed in parallel with the Ys and Zs axes, as shownin FIG. 14. First and second gyroscopes 302 and 303 are corresponding tosecond and third gyroscopes 302 303 in FIG. 1 for measuring first andsecond angular velocities Jy and Jz, respectively.

A motion angle calculator 310′ calculates, from the first and secondangular velocities Jy and Jz, a Y-moving angle ΔY around the Y axis, anda Z-moving angle ΔZ around Z axis as two factors of the motion angle.

First and second terrestrial magnetometers 401 and 402 are disposed inparallel with Xs and Ys axes for producing first and second magneticdetection signals (Mx, My), respectively, and an accelerometer 403 isdisposed in parallel with Xs axis for producing an accelerationdetection signal (Ax), as shown in FIG. 14, as is similar to FIG. 1. Astatic angle calculator 405′ calculates a tentative pitch angle P and atentative yaw angle Φ as the azimuthal deviation angle from the firstand second magnetic detection signals (Mx, My) and the accelerationdetection signal (Ax).

An orientation angle calculator 60′ calculates an integrated value setof first and second integrated values (ΣΔY, ΣΔZ) by time integration ofthe Y-moving angle ΔY and Z-moving angle ΔZ and produces the 2-Dorientation angle (α, β) from the integrated value set (ΣΔY, ΣΔZ) andthe static angle, the 2-D orientation angle being stored in anorientation angle memory 70.

Between the first and second gyroscopes 302 and 303 and the motion anglecalculator 310′, there are first and second high-pass filters 305 and306 for the similar purpose of second and third ones in FIG. 3. It isneedless to say that first and second A/D convertos are used at outputsides of the high-pass filters for digitally processing of signals,although they are not shown for simplification of the drawings.

The high-pass filter corrector 311 of FIG. 6 can be used in thisembodiment, and the digital high-pass filter of FIG. 8 can be used inplace of the high-pass filters 305 and 306. The description of thehigh-pass filters, the A/D convertors, the digital A/d convertors areomitted for the purpose of the simplification of the description.

Receiving time-serial moving angle signals represent time-serialY-moving angle ΔY(t), t=n, (n−1), (n−2), . . . 1, n-−n−1)=St, andtime-serial ΔZ(t), the motion angle calculator 310′ calculates, Y-movingangle ΔY(n) and Z-moving angle ΔZ(n) at t=n according to the followingequations: $\begin{bmatrix}{\Delta \quad {Y(n)}} \\{\Delta \quad {Z(n)}}\end{bmatrix} = {\begin{bmatrix}1 & 0 \\0 & {{1/\cos}\quad {\beta \left( {n - 1} \right)}}\end{bmatrix} \times \begin{bmatrix}{{Jy}(n)} \\{{Jz}(n)}\end{bmatrix}}$

The 2-D orientation angle detector according to this embodiment furthercomprises first and second oscillation removers 321 and 322 for removinga noise included in the first and second gyro outputs (Jy, Jz) due tooscillation of the detector itself due to, for example, unintendedvibration of the hand of its user.

The first and second oscillation removers 321 and 322 connect the firstand second high-pass filters 305 and 306 with the motion anglecalculator 310′, respectively. The first and second oscillation removers321 and 322 process to make first and second time averages of the firstand second filter outputs over a predetermined time period,respectively. Then, the first and second oscillation removers 321 and322 compare the first and second time averages with first and secondpredetermined threshold values, respectively. The first and secondoscillation removers 321 and 322, and temporarily remove parts of thefirst and second filter outputs when the first and second time averagesare smaller than the first and second threshold values, respectively,and produce first and second processed signals. The first and secondprocessed signals are supplied to the motion angle calculator 310′ asthe first and second incoming signals.

In each of the oscillation removers 321 and 322, the incoming signal isrepresented by J(n) at t=n, with the threshold value being a, theoscillation remover (321 and 322 defines that the incoming signal hasthe noise when the following formula is fulfilled:

|J(n)+J(n−1)+ . . . +J(n−a)|/a<ε

where a is a number of sampling interval for determining the time period(a·St) for which the average is calculated. The value of a is usuallyselected 3. Then, the oscillation remover deal the incoming signal J(n)as zero (0), that is , delivers an output signal representing a value ofzero (0) in response to the incoming signal J(n).

The static angle calculator 405′ is similar to the static anglecalculator 405 in FIG. 4 except that it has neither A/D convertor 40502nor roll angle claculator 40503 for obtaining the tentative roll angleR. Therefore, the description in connection with FIG. 4 should bereferred to description of the static angle calculator 405′.

The 2-D orientation angle detector also has a static angle correctiondefiner 50′ to deliver a correction signal to the orientation calculator50′, when the tentative pitch angle P and/or the tentative yaw angle Φare accurate.

The defining operation is similar to that of the correction definer 50in FIG. 3 but the tentative roll angle R is not defined. The definingoperation can be performed according to equations (5) and (6) describedabove.

Further, the orientation angle calculator 60′ only calculate two factors(α, β). Accordingly, correction operation of the orientation angleresponse to the correction signal from the correction definer is similarto that in the orientation angle calculator 60 in FIG. 3 except that theroll angle γ is not treated. Therefore, description of the orientationangle calculator 60′ will be omitted for the purpose of simplificationof the description.

INDUSTRIAL APPLICABILITY

According to this invention, an orientation angle detector can beobtained which is small and simple in structure, excellent in accuracy,and low in cost. The orientation angle detector can be used for adetector in HMD, a detector in various test machines for various movingbodies, or an input terminal for a computer, a data processor, and acomputer game machine.

What is claimed is:
 1. An orientation angle detector comprising: aplurality of gyroscopes (301-303) disposed in parallel with a pluralityof orthogonal axes (Xs-Zs) defining a detector co-ordinate on saiddetector, respectively, for measuring angular velocities (Jx, Jy, Jz)around respective axes (Xs-Zs), a motion angle calculator (310) coupledto said plurality of gyroscopes (301-303) for calculating a motion angle(ΔX, ΔY, ΔZ) from said angular velocities (Jx, Jy, Jz), at least oneaccelerometer (403, 404) disposed in parallel with at least one of saidorthogonal axes (Xs-Zs) for measuring linear acceleration (Ax, Ay), astatic angle calculator (405) coupled to said at least one accelerometer(403, 404) for calculating a static angle (R, P) from said acceleration(Ax, Ay), and an orientation angle calculator (60) coupled to saidmotion angle calculator (310) and said static angle calculator (405) forintegrating said motion angle (ΔX, ΔY, ΔZ) to an integrated angle andcalculating an orientation angle (α, β, γ) from said integrated angle,said static angle (R, P) and an azimuthal deviation angle (Φ), whereinsaid orientation angle (α, β, γ) is an angular difference between saiddetector co-ordinate (Xs-Ys-Zs) and a reference co-ordinate (X-Y-Z) in aspace including said detector, wherein two magnetometers (401, 402) aredisposed in parallel with two of said plurality of orthogonal axes (Xs,Ys) to measure terrestrial magnetic components (Mx, My) in the two ofsaid plurality of axes (Xs, Ys), and wherein said static anglecalculator (405) is coupled to said two magnetometers (401, 402) forcalculating an azimuth from said terrestrial magnetic components (Mx,My) to produce from said azimuth said azimuthal deviation angle (Φ) fromsaid reference co-ordinate (X-Y-Z) as an additional factor of saidstatic angle (R, P).
 2. An orientation angle detector as claimed inclaim 1, further comprising an orientation angle memory (70) coupled tosaid orientation angle calculator (60) for storing said orientationangle (α, β, γ), wherein said reference co-ordinate is athree-dimensional co-ordinate having a vertical Z axis and twohorizontal Y and X axes, and said detector co-ordinate is anotherthree-dimensional co-ordinates having three orthogonal axes Zs, Ys andXs corresponding to said Z, Y and X axes, respectively, said orientationangle is represented by Z-Y-X Euler's angle which is composed of threecomponents of yaw angle α being a rotational angle around Z axis, apitch angle β being a rotational angle around Y axis, and a roll angle γbeing a rotational angle around X axis, and wherein said plurality ofgyroscopes are first through third gyroscopes (301-303) disposed inparallel with said Xs, Ys and Zs axes for measuring first through thirdangular velocities (Jx, Jy, Jz) around said Xs, Ys and Zs axes,respectively, said motion angle calculator (310) calculating, from saidfirst through third angular velocities (Jx, Jy, Jz), an X-moving angleΔX around the X axis, a Y-moving angle ΔY around they axis, and aZ-moving angle ΔZ around Z axis as three factors of said motion angle,and wherein said two terrestrial magnetometers are first and second ones(401, 402) disposed in parallel with Xs and Ys axes for producing firstand second magnetic detection signals (Mx, My), respectively, and saidat least one accelerometer is first and second accelerometers (403, 404)disposed in parallel with Xs and Ys axes for producing first and secondacceleration detection signals (Ax, Ay), said static angle calculator(405) calculating a tentative pitch angle P, a tentative roll angle Rand a tentative yaw angle Φ as said azimuthal deviation angle from saidfirst and second magnetic detection signals (Mx, My) and said first andsecond acceleration detection signals (Ax, Ay), said tentative pitchangle P, said tentative roll angle Rand said tentative yaw angle Φ beingfactors of said static angle, and wherein said orientation anglecalculator (60) calculates an integrated value set of first throughthird integrated values (ΣΔX , ΣΔY, ΣΔZ) by time integration of saidX-moving angle ΔX, Y-moving angle ΔY, and Z-moving angle ΔZ and producessaid orientation angle from said integrated value set (ΣΔX, ΣΔY, ΣΔZ)and said static angle, said orientation angle being stored in saidorientation angle memory (70).
 3. An orientation angle detector asclaimed in claim 2, wherein said first through third gyroscopes(301-303) are Coriolis vibratory gyroscopes each having a piezoelectricvibrator, said first through third gyroscopes (301-303) produce firstthrough third gyro outputs (Jx, Jy, Jz) representing the angularvelocities around said Xs, Ys and Zs axes.
 4. An orientation angledetector as claimed in claim 3, which further comprises first throughthird high-pass filters (304-306) coupled to said first through thirdCoriolis vibratory gyroscopes (301-303) for canceling offset voltagesincluded in the first through third gyro outputs (Jx, Jy, Jz) of saidfirst through Coriolis vibratory gyroscopes to produce first throughthird filter outputs, respectively.
 5. An orientation angle detector asclaimed in claim 4, wherein each of said first through third high-passfilters (304-306) has a cutoff frequency of 0.1 Hz or lower.
 6. Anorientation angle detector as claimed in claim 4, wherein each of saidfirst through third high-pass filters (304-306) has a variable cutofffrequency.
 7. An orientation angle detector as claimed in claim 4, saidfirst through third high-pass filters (304-306) being analogue typehigh-pass filters, said orientation angle detector further comprisingfirst through third analogue-to-digital convertors (307-309) coupled tosaid first through third high-pass filters (304-306) for sampling saidfirst through third filter outputs every sampling intervals St toproduce first through third time-serial digital signals, respectively,said motion angle calculator (310) receiving said first through thirdtime-serial digital signals as incoming first through third time-serialdigital signals to produce three time-serial moving angle signals (ΔX,ΔY, ΔZ) representing said motion angle, said orientation anglecalculator (60) receiving said three time-serial moving angle signals(ΔX, ΔY, ΔZ) to time-serially produce said orientation angle, and saidorientation angle memory (70) coupled to said orientation anglecalculator (60) for storing said orientation angle time-seriallydelivered from said orientation angle calculator (60).
 8. An orientationangle detector as claimed in claim 7, wherein said first through thirdtime-serial moving angle signals represent time-serial X-moving angleΔX(t), t=n, (n−1), (n−2), . . . 1, n−(n−1)=St, time serial Y-movingangle ΔY(t), and time-serial ΔZ (t), said motion angle calculator (310)calculates X-moving angle ΔX(n), Y-moving angle ΔY(n) and Z-moving angleΔZ(n) at t=n according to the following equations:$\left\lbrack \quad \begin{matrix}{{\Delta X}(n)} \\{\Delta \quad {Y(n)}} \\{\Delta \quad {Z(t)}}\end{matrix} \right\rbrack = \quad \quad {\left\lbrack \quad \begin{matrix}0 & {\tan \quad {\beta \left( {n - 1} \right)}\sin \quad {\gamma \left( {n - 1} \right)}} & {\tan \quad {\beta \left( {n - 1} \right)}\cos \quad {\gamma \left( {n - 1} \right)}} \\1 & {\cos \quad {\gamma \left( {n - 1} \right)}} & {{- \sin}\quad {\gamma \left( {n - 1} \right)}} \\0 & {{- \sin}\quad {{\gamma \left( {n - 1} \right)}/\cos}\quad {\beta \left( {n - 1} \right)}} & {\cos \quad {{\gamma \left( {n - 1} \right)}/\cos}\quad {\beta \left( {n - 1} \right)}}\end{matrix} \right\rbrack \times \left\lbrack \quad \begin{matrix}{{Jx}(n)} \\{{Jy}(n)} \\{{Jz}(n)}\end{matrix}\quad \right\rbrack}$

where β(n−1) and γ(n−1) are the pitch angle β and roll angle γ at t=n−1which are read out from said orientation angle memory (70), Jx(n), Jy(n)and Jz(n) being first through third digital signals of said firstthrough third incoming time-serial digital signals at t=n.
 9. Anorientation angle detector as claimed in claim 8, which further comprisethree high-pass filter correction circuits (311) coupled between saidfirst through third analogue-to-digital convertors (307-309) and saidmotion angle calculator, (310) for compensating errors accompanied atsaid first through third high-pass filters to produce first throughthird corrected signals, said first through third corrected signalsbeing delivered to said motion angle calculator (310) as said firstthrough incoming time-serial digital signals, each of said high-passfilter correction circuits (311) performs calculation given by thefollowing equation: J(n)=F(n)+(Δt/RC)·ΣF(n) where J(n) is said correctedsignal which is a corresponding one of said incoming time-serial digitalsignals at t=n, F(n) is the digital value of the corresponding one ofsaid first through third time-serial digital signals at t=n, and Δt/RCis a constant value.
 10. An orientation angle detector as claimed inclaim 9, wherein said high-pass filter correction circuit (311)comprises an integrator comprising a first adder (31101) and a registor(31102) for integrating said digital values of said corresponding timeserial digital signal to hold an integrated value in said registor(31102), a constant value generator (31103) for generating said constantvalue, a multiplier (31104) coupled to said registor (31102) and saidconstant value generator (31103) for multiplying said integrated valueby said constant value to produce a multiplied value, and a second adder(31105) for adding said multiplied value to said digital valuestime-serially incoming to produce said corrected signal.
 11. Anorientation angle detector as claimed in claim 10, wherein saidhigh-pass filter correction circuit (311) further comprises an offseterror compensating circuit (31106-3108) for compensating an offset errorcaused by calculation in said integrator (31101-31102) and said second.adder (31105), said offset error compensating circuit comprising anoutput definer (31106) for observing when said corrected signal ismaintained constant to define the offset error level, an error corrector(31107) coupled to said output definer and responsive to said errorlevel for producing an error correction signal, said error correctionsignal being supplied to said registor (31102) for correcting saidintegrated value, and a constant value correction circuit (31108)coupled to said error corrector (31107) and responsive to said errorcorrection signal for correcting saidconstant value of said constantvalue generator (31103).
 12. An orientation angle detector as claimed inclaim 4, wherein said first through third high-pass filters are firstthrough third digital high-pass filter devices (FIG. 8) to produce firstthrough third time-serial digital filter outputs, respectivley, each ofsaid first through third digital high-pass filter devices (FIG. 8)comprising an analogue-to-digital convertor (313) coupled to acorresponding one of said first through third gyroscopes (301-303) forsampling a corresponding one of said first through third gyro outputs atsampling intervals St to produce a time-serial digital signal, a digitalfilter (315) coupled to said analogue-to-digital convertor (313) forfiltering said time-serial digital signal to produce a corresponding oneof said first through third time-serial digital filter outputs, saidmotion angle calculator (310) receiving said first through thirdtime-serial digital filter outputs as first through incoming thirdtime-serial digital signals to produce three time-serial moving anglesignals (ΔX, ΔY, ΔZ) representing said motion angle, said orientationangle calculator (60) receiving said three time-serial moving anglesignals (ΔX, ΔY, ΔZ) to time-serially produce said orientation angle,and said orientation angle memory (70) storing said orientation angletime-serially delivered from said orientation angle calculator.
 13. Anorientation angle detector as claimed in claim 12, wherein said firstthrough third time-serial moving angle signals represent the time-serialX-moving angle ΔX(t), t=n, (n−1), (n−2), . . . , 1, where St=n−(n−1),the time serial Y-moving angle ΔY(t), and the time-serial ΔZ(t), saidmotion angle calculator (310) calculates the X-moving angle ΔX(n), theY-moving angle ΔY(n) and the Z-moving angle ΔZ(n) at t=n according tothe following equations: $\left\lbrack \quad \begin{matrix}{{\Delta X}(n)} \\{\Delta \quad {Y(n)}} \\{\Delta \quad {Z(t)}}\end{matrix} \right\rbrack = \quad \quad {\left\lbrack \quad \begin{matrix}0 & {\tan \quad {\beta \left( {n - 1} \right)}\sin \quad {\gamma \left( {n - 1} \right)}} & {\tan \quad {\beta \left( {n - 1} \right)}\cos \quad {\gamma \left( {n - 1} \right)}} \\1 & {\cos \quad {\gamma \left( {n - 1} \right)}} & {{- \sin}\quad {\gamma \left( {n - 1} \right)}} \\0 & {{- \sin}\quad {{\gamma \left( {n - 1} \right)}/\cos}\quad {\beta \left( {n - 1} \right)}} & {\cos \quad {{\gamma \left( {n - 1} \right)}/\cos}\quad {\beta \left( {n - 1} \right)}}\end{matrix} \right\rbrack \times \left\lbrack \quad \begin{matrix}{{Jx}(n)} \\{{Jy}(n)} \\{{Jz}(n)}\end{matrix}\quad \right\rbrack}$

where β(n−1) and γ(n−1) are the pitch angle β and roll angle γ at t=n−1which are read out from said orientation angle memory, Jx(n), Jy(n) andJz(n) being first through third digital signals of said first throughthird incoming time-serial digital signals at t=n.
 14. An orientationangle detector as claimed in claim 13, wherein said digital filter is aninfinite impulse response type (315) having delay buffer values (P1,P2), and wherein said digital high-pass filter device (FIG. 8) furthercomprises a positive/negative definer (316) coupled to an output side ofsaid digital filter (315) for defining from said time-serial digitalfilter output when said time-serial digital signal changes betweenpositive or negative to produce a change signal, and a delay buffervalue reset circuit (317) coupled to said digital filter (315) and saidpositive/negative definer (316) and responsive to said change signal forresetting said delay buffer values (P1, P2) of said digital filter(315).
 15. An orientation angle detector as claimed in claim 14, whereinsaid digital high-pass filter device (FIG. 8) further comprises anoffset value generator (319) for generating an offset value, amultiplier (320) coupled to said offset value generator (319) andconnecting said analogue-to-digital convertor (313) with said digitalfilter (315) for multiplying said time-serial digital signal by saidoffset value, and an offset value correcting circuit (318) coupled tosaid offset value generator (319) and said positive/negative definer(316) and responsive to said change signal for correcting said offsetvalue.
 16. An orientation angle detector as claimed in claim 3, whichfurther comprises a printed circuit board device (201) having a firstand a second side plate sections perpendicular to each other and a thirdside plate section to form a right-angled triangular cylinder, saidfirst through third piezoelectric ceramic vibrators of said firstthrough third gyroscopes (301, 302, 303) being fixedly mounted on saidfirst, second and third side plate sections, respectively, so that saidfirst through third gyroscopes are disposed in parallel with Xs-axis,Y-axis and Zs-axis of said detection co-ordinate.
 17. An orientationangle detector as claimed in claim 16, wherein said printed circuitboard device (201) has an end edge of said right-angled triangularcylinder which extends on a single plane, and terminals (204) extendingfrom said end edge for electrical connection with external electricparts.
 18. An orientation angle detector as claimed in claim 17, whereinsaid third side plate section extends in a direction opposite to saidend edge beyond said first and second side plate sections.
 19. Anorientation angle detector as claimed in claim 18, wherein said printedcircuit board device (201) comprises a single flexible printed circuitboard bent to form into said right-angled triangular cylinder havingsaid first through third side plate portions.
 20. An orientation angledetector as claimed in claim 19, wherein said flexible printed circuitboard (201) has two slits (202, 203) at bent portions at which saidprinted circuit board is bent.
 21. An orientation angle detector asclaimed in claim 16, wherein each of said first through thirdpiezoelectric vibrators is made of any one of piezoelectric ceramics,piezoelectric single crystal material, and silicon.
 22. An orientationangle detector as claimed in claim 2, wherein said static anglecalculator (405) comprises first and second analogue-to-digitalconvertors (40501, 40502) coupled to said first and secondaccelerometers (403, 404) for sampling said first and secondacceleration detection signals (Ax, Ay) every sampling intervals St toproduce first and second time-serial digital acceleration signals, atentative pitch angle calculator (40504) coupled to said first analogueconvertor (40501) for calculating said tentative pitch angle P from saidfirst time-serial digital acceleration signal, and a tentative rollangle calculator (40503) coupled to said second analogue-to-digitalconvertor (40502) and said tentative pitch calculator (40504) forcalculating said tentative roll angle R from said second time-serialacceleration signal and said tentative pitch angle P, said tentativeroll angle R and said tentative pitch angle P being factors of saidstatic angle.
 23. An orientation angle detector as claimed in claim 16,wherein said first and second time-serial digital acceleration signalsare represented by Ax(t) and Ay(t), where t=n, n−1, . . . , 1,St=n−(n−1), and said tentative pitch angle calculator (40504) and saidtentative roll angle calculator (40503) calculate the tentative pitchangle P and the tentative roll angle R according to the followingequations, respectively; P(n)=sin⁻¹ Ax(n), and R(n)=sin⁻¹ [Ay(n)/cosP(n)], where P(n), R(n), Ax(n) and Ay(n) representing P, R, Ax(t) andAy(t) at t=n.
 24. An orientation angle detector as claimed in claim 23,wherein said static angle calculator (405) comprises third and fourthanalogue-to-digital convertors (40505, 40506) coupled to said first andsecond terrestrial magnetometers (401, 402) for sampling said first andsecond magnetic detection signals Mx and My every sampling intervals Stto produce first and second time-serial digital magnetic detectionsignals, an co-ordinate transforming calculator (40507) coupled to saidthird and fourth analogue-to-digital convertors (40505, 40506), saidtentative roll angle calculator (40503) and said tentative pitchcalculator (40504) for transforming said first and second time-serialdigital magnetic detection signals into first and second time-serialdigital terrestrial magnetic component signals representing twocorresponding terrestrial magnetic components Hx and Hy in the X-Y planeof said reference X-Y-Z co-ordinate, an azimuth calculator (40508)coupled to said co-ordinate transforming calculator (40507) forcalculating an azimuth P from said terrestrial magnetic components Hxand Hy to produce a tentative yaw angle Φ as said azimuthal deviationangle, and an azimuth memory (40512) coupled to said azimuth calculator(40508) for storing said azimuth ψ.
 25. An orientation angle detector asclaimed in claim 24, wherein said static angle calculator (405) furthercomprises a Z-direction magnetic component generator (40509-40515)coupled to said third and fourth analogue-to-digital convertors (40505,40506) for producing a time-serial digital Z-direction magneticcomponent signal Mz from said first and second time-serial magneticdetection signals Mx and My, a terrestrial magnetism Ht previouslymeasured, an initial slant angle θ0 of a Xs-Ys plane defined by Xs andYs axes of said detector co-ordinate from said X-Y plane, and a currentslant angle θ2 of said Xs-Ys plane from said X-Y plane, and saidco-ordinate transforming calculator (40507) calculate said terrestrialmagnetic components Hx and Hy from said first and second time-serialmagnetic detection signals Mx and My, said time-serial digitalZ-direction magnetic component signal Mz, and said tentative pitch androll angles P and R, according to the following equations:Hx(n) = cos [P(n)] × M  x(n) + sin [P(n)] × Mz(n), and$\begin{matrix}{{{Hy}(n)} = \quad {{{\sin \left\lbrack {R(n)} \right\rbrack} \times {\sin \left\lbrack {P(n)} \right\rbrack} \times M\quad {x(n)}} +}} \\{\quad {{{\cos \left\lbrack {R(n)} \right\rbrack} \times {\cos \left\lbrack {P(n)} \right\rbrack} \times {{Mz}(n)}},}}\end{matrix}$

where Hx(n), Hy(n), Mx(n), My(n), Mz(n), P(n) and R(n) represent Hx, Hy,Mx, My, Mz, P and R at t=n, and said azimuth calculator (40508)calculates ψ(n) of said azimuthψ at t=n from Hx(n) and Hy(n) accordingto the following equation: ψ(n)=−tan⁻¹ [Hy(n)/Hx(n)], and said azimuthcalculator (40508) further calculates Φ(n) of said tentative yaw angle Φat t=n from said ψ(n) and an initial azimuth deviation angle ψ(0)according to the following equation: Φ(n)=Φ(n)−ψ(0).
 26. An orientationangle detector as claimed in claim 25, wherein said Z-direction magneticcomponent generator (40509-40515) comprises: a terrestrial magnetismgenerator (40509, 40510) for producing said terrestrial magnetism Ht; acurrent Z-direction magnetic component absolute value calculator (40511)coupled to said terrestrial magnetism generator (40509, 40510), saidthird and fourth analogue-to-digital convertors (40505, 40506) forcalculating a Z-direction magnetic component absolute value |Mz(n)| fromsaid terrestrial magnetism Ht, said current value Mx(n) and My(n) ofsaid first and second time-serial magnetic detection signals Mx and Myat t=n according to the following equation: |Mz(n)|=[Ht ² −{Mx(n)²+My(n)²}]^(½); a current slant angle calculator (40513) coupled to saidorientation angle memory (70) and said azimuth memory (40512) forcalculating said current slant angle θ2; a sign definer (40514) coupledto said current slant angle calculator (40513) for producing a sign (+or−) of said current Z-direction magnetic component Mz(n) from saidcurrent slant angle θ2 and said initial slant angle θ0; and a currentZ-direction magnetic component calculator (40515) coupled to saidcurrent Z-direction magnetic component absolute value calculator (40511)and said sign definer (40514) to produce said Z-direction magneticcomponent Mz(n).
 27. An orientation angle detector as claimed in claim26, wherein said terrestrial magnetism generator (40509, 40510)comprises: an initial terrestrial magnetism memory (40509) selectivelycoupled to said third and fourth analogue digital convertors (40505,40506) through two switching elements (S1, S2), respectively, formemorizing initial X-direction, Y-direction and Z-direction terrestrialmagnetic components Mx(0), My(0) and Mz(0) from said third and fourthanalogue-to-digital convertors (40505, 40506) through said two switchelements (S1, S2) selectively turned on at initial time; and a processor(40510) coupled to said initial terrestrial magnetism memory (40509) forprocessing said initial X-direction, Y-direction and Z-directionterrestrial magnetic components Mx(0), My(0) and Mz(0) into saidterrestrial magnetism Ht according to the following equation:|Ht|=[Mx(0)² +My(0)² +Mz(0)²]^(½), the absolute value |Ht| beingmemorized as said terrestrial magnetism Ht in said initial terrestrialmagnetism memory (40509).
 28. An orientation angle detector as claimedin claim 27, wherein, at initial state: said orientation angle detectoris, on one hand, positioned so that a particular one of said first andsecond terrestrial magnetometers (401, 402) is in parallel with said Zaxis of said reference co-ordinate, then a corresponding one of said twoswitch elements (S1, S2) being turned on to memorize the terrestrialmagnetic component detected by said particular terrestrial magnetometer(401 or 402) in said initial terrestrial magnetism memory (40509) assaid initial Z-direction terrestrial magnetic component Mz(0); and saidorientation angle detector is, on the other hand, positioned so thatsaid first and second terrestrial magnetometers (401, 402) are inparallel with said X and Y axes of said reference co-ordinate, then saidtwo switch elements (S1, S2) being turned on to memorize the terrestrialmagnetic components detected by said first and second magnetometers(401, 402) in said initial terrestrial magnetism memory (40509) as saidinitial X-direction terrestrial magnetic component Mx(0) and saidinitial Y-direction terrestrial magnetic component My(0).
 29. Anorientation angle detector as claimed in claim 26, wherein said currentslant angle calculator (40513) calculates said current slant angle θ2from an angular value ψ(n−1) of said azimuth ψ at t=n−1 read out fromsaid azimuth memory (40512), and roll and pitch angle values β(n−1) andγ(n−1) of said roll and pitch angles β and γ red out from saidorientation angle memory (70), according to the following equation:θ2=sin⁻¹ [aa/(aa ² +cc ²)^(½)], where, aa=cos γ(n−1)×sin β(n−1)×cosψ(n−1)×sin ψ(n−1) and cc=cos γ(n−1)×cos β(n−1).
 30. An orientation angledetector as claimed in claim 29, wherein said sign definer (40514)defines, on one hand, said sign as positive (+) when said current slantangle θ2 is larger than said initial slant angle θ0 but is smaller than90 angular degree, and defines, on the other hand, said sign as negative(−) when said current slant angle θ2 is equal to or smaller than saidinitial slant angle θ0 but is larger than −90 angular degree.
 31. Anorientation angle detector as claimed in claim 22, further comprising athird accelerometer (406) disposed in parallel with Zs-axis of saiddetector co-ordinate to produce a third acceleration detection signal(Az), wherein said static angle calculator (405) further comprises anadditional analogue-to-digital convertor (4061) coupled to said thirdaccelerometer (406) for sampling said third acceleration detectionsignal (Az) every sampling intervals St to produce a third time-serialdigital acceleration signal, said third time-serial acceleration signalbeing applied to said roll angle calculator (40504) for calculating saidtentative roll angle R.
 32. An orientation angle detector as claimed inclaim 31, wherein said first, second and third time-serial digitalacceleration signals are represented by Ax(t), Ay(t) and Az(t), wheret=n, n−1, . . . , 1, St=n−(n−1), tentative pitch angle calculator(40504) and said tentative roll angle calculator (40503) calculate thetentative pitch angle P and the tentative roll angle R according to thefollowing equations, respectively; P(n)=sin⁻¹ Ax(n), when Az>0,R(n)=sin⁻¹ [Ay(n)/cos P(n)], when Az<0 and Ax>0 R(n)=π−sin⁻¹ [Ay(n)/cosP(n)], and when Az<0 and Ax<0, R(n)=−π−sin⁻¹ [Ay(n)/cos P(n)], whereP(n), R(n), Ax(n), Ay(n) and Az(n) representing P, R, Ax(t) Ay(t) andAz(t) at t=n.
 33. An orientation angle detector as claimed in claim 2,which further comprises a static angle correction definer (50) coupledto said static angle calculator (405) and said orientation anglecalculator (60) for defining accuracy of said static angle (P, R, Φ) toproduce a correction signal, and wherein said orientation anglecalculator (60) is responsive to said correction signal to calculate acorrection value and corrects said integrated value set by saidcorrection value to produce a modified value set, said modified valueset being delivered as said orientation angle (α, β, γ).
 34. Anorientation angle detector as claimed in claim 33, wherein saidorientation angle calculator (60) calculates first through thirdintegrated values ΣΔX, ΣΔY and ΣΔZ according to the following equations:ΣΔX(n)=γ(n−1)+ΔX(n), ΣΔY(n)=β(n−1)+ΔY(n), and ΣΔZ(n)=α(n−1)+ΔZ(n), whereΔX(n), ΔY(n) and ΔZ(n) are X-moving angle ΔX, Y-moving angle ΔY andZ-moving angle ΔZ, respectively, at a time t=n, and β(n−1), β(n−1) andα(n−1) are said roll angle γ, said pitch angle β and said roll angle α,respectively at a time t=n−1, said γ(n−1), β(n−1) and α(n−1) being readout from orientation angle memory (70).
 35. An orientation angledetector as claimed in claim 34, wherein said orientation anglecalculator (60) calculates, upon receiving said correction signal, firstthrough third angular errors Ex, Ey and Ez by the following equations:Ex=ΣΔX(n)−R(n), Ey=ΣΔY(n)−P(n), and Ez=ΣΔZ(n)−Φ(n), said orientationangle calculator (60) further determines first through third correctionvalues C1, C2, and C3 as said correction value from said first throughthird angular errors and calculates said first through third modifiedvalues as said roll angle γ, said pitch angle β and said yaw angle α bythe following equations: γ=ΣΔX(n)−C 1, β=ΣΔY(n)−C 2, and α=ΣΔZ(n)−C 3,where C1, C2 and C3 are selected to be values smaller than said firstthrough third angular errors Ex, Ey, and Ez, respectively.
 36. Anorientation angle detector as claimed in claim 35, wherein said C1, C2,and C3 are determined by k1×Ex, k2×Ey, and k3×Ez, respectively, wherek1, k2 and k3 are constant values smaller than
 1. 37. An orientationangle detector as claimed in claim 35, which further comprises acorrection coefficient generator (80) coupled to said static anglecalculator (405) and said orientation angle calculator (60) forgenerating a set of first through third coefficients m1, m2 and m3, saidfirst through third coefficients m1, m2 and m3 being selected frompredetermined different values in response to angular values of saidtentative pitch angle P and said tentative roll angle R received fromsaid static angle calculator (405), and wherein said orientation anglecalculator is responsive to said set of first through third coefficientsm1, m2 and m3 to modify said first through third correction values C1,C2 and C3 by multiplying with said first through third coefficients m1,m2 and m3, respectively.
 38. An orientation angle detector as claimed inclaim 33, further comprising a third accelerometer (406) disposed inparallel with Zs-axis of said detector co-ordinate to produce a thirdacceleration detection signal (Az), wherein said static angle correctiondefiner (50) receives said first, second and third accelerationdetection signals (Ax, Ay, Az), and calculates an absolute value of acomposite acceleration vector of acceleration of Xs-axis direction,Ys-axis direction, and Zs-axis direction, according to the followingformula: |A|=(Ax+Ay+Az)^(½), said correction definer (50) produces saidcorrection signal when said |A|b 1G, G being the gravity acceleration.39. An orientation angle detector as claimed in claim 34, wherein saidcorrection definer (50) is provided with a static angle memory (501) forstoring said tentative pitch angle P and said tentative roll angle Rreceived from said static angle calculator (405), and wherein saidcorrection definer (50) compares the tentative pitch angle P(n) andtentative roll angle R(n) received at a time t=n with the earliertentative pitch angle P(n−1) and tentative roll angle R(n−1) at t=n−1which are read from said static angle memory (501) to define saidtentative pitch angle P(n) and tentative roll angle R(n) to be accuratewhen the following two equations (1) and (2) are fulfilled,respectively: |R(n)−R(n−1)|−B≈0  (1), and |P(n)−P(n−1)|−D≈0  (2), whereB and D are positive values as selected.
 40. An orientation angledetector as claimed in claim 39, wherein said B and Dare small valuesnearly equal to zero(0).
 41. An orientation angle detector as claimed inclaim 39, wherein said correction definer (50) is connected to saidmotion angle calculator (310) for receiving said X-moving angle ΔX(n)and said Y-moving angle ΔY(n), and said B and D are selected to be saidX-moving angle ΔX(n) and said Y-moving angle ΔY(n), respectively.
 42. Anorientation angle detector as claimed in claim 39, wherein saidcorrection definer (50) is further received said tentative yaw angleΦ(t) and said Z-moving angle ΔZ(t) from said static angle calculator(405) and motion angle calculator (310), respectively, said tentativeyaw angle Φ(t) being stored in said static angle memory (501), saidcorrection angle definer (50) further processes the tentative yaw angleΦ(n) and the Z-moving angle ΔZ(n) at t=n and the yaw angle Φ(n−1) att=n−1 which is read from said orientation angle memory (501), accordingto the following equation (3): |Φ(n)Φ(n−1)|−ΔZ(n)≈0  (3), and definessaid the tentative yaw angle Φ(n) to be accurate when the equation (3).43. An orientation angle detector as claimed in claim 34, wherein saidcorrection definer (50) is provided with a static and motion anglememory (501) for storing said tentative pitch angle P(n) and saidtentative roll angle R(n) received from said static angle calculator(405), and said X-moving angle ΔX and said Y-moving angle ΔY receivedfrom said motion angle calculator (310), and wherein said correctiondefiner (50) calculates a moving average of variation of said tentativepitch angle P(t), a moving average of variation of said tentative rollangle R(t), a moving average of said X-moving angle ΔX(t), and a movingaverage of said Y-moving angle ΔY(t), and defines said tentative pitchangle P(n) and said tentative roll angle R(n) to be accurate when thefollowing two equations (1) and (2) are fulfilled, respectively:[R(n)−R(n−1)]/C−[ΔX(n)+ΔX(n−1)+ . . . +ΔX(n−C+1)]/C≈0  (1)[P(n)−P(n−1)]/C−[ΔY(n)+ΔY(n−1)+ . . . +ΔY(n−C+1)]/C≈0  (2).
 44. Anorientation angle detector as claimed in claim 43, where said correctiondefiner (50) stores in said static and motion angle memory (501) saidtentative yaw angle Φ(n) from said static angle calculator (405) andsaid Z-moving angle ΔZ from said motion angle calculator (310), whereinsaid correction definer (50) further calculates a moving average ofvariation of said tentative yaw angle Φ(t), a moving average of saidZ-moving angle ΔZ(t), and define said tentative yaw angle Φ(n) to beaccurate when the following equation (3) is fulfilled:[Φ(n)−Φ(n−1)]/C−[ΔZ(n)+ΔZ(n−1)+ . . . +ΔZ(n−C+1)]/C≈0  (1).
 45. Anorientation angle detector as claimed in claim 39 or 43, wherein saidcorrection definer (50) produces said correction signal when at leastone of said tentative pitch angle P(n) and said tentative roll angleR(n) is defined accurate, and said correction definer (50) produces anon-correction signal when none of said tentative pitch angle and saidtentative roll angle R(n) is defined accurate, said orientation anglecalculator (60) is responsive to said non-correction signal to producessaid integrated value set ΣΔX(n), ΣΔY (n) and ΣΔZ(n)) as saidorientation angle (γ, β, α).
 46. An orientation angle detector asclaimed in claim 42 or 44, wherein said correction definer (50) producessaid correction signal when said tentative yaw angle Φ(n) is definedaccurate but in no relation to whether or not said tentative pitch angleand said tentative roll angle R(n) are defined accurate, and saidcorrection definer (50) produces a non-correction signal when none ofsaid tentative pitch angle, said tentative roll angle R(n) and said yawangle Φ(n) is defined accurate, said orientation angle calculator (60)is responsive to said non-correction signal to produces said integratedvalue set ΣΔX(n), ΣΔY(n) and ΣΔZ(n)) as said orientation angle (γ, β,α).
 47. An orientation angle detector as claimed in any one of claims39, 42, 43, and 44, wherein said correction definer (50), upon definingaccuracy of particular ones of said tentative roll angle R, saidtentative pitch angle P and said tentative yaw angle Φ produces, as saidcorrection signal, an indication signal representative of thatparticular ones of said tentative roll angle R, said tentative pitchangle P and said tentative yaw angle Φ which are defined accurate, andwherein said orientation angle calculator (60) is responsive to saidindication signal to modify specific ones of said first through thirdintegrated values ΣΔX(n), ΣΔY(n) and ΣΔZ(n) corresponding to saidparticular ones of said tentative roll angle R, said tentative pitchangle P and said tentative yaw angle Φ by use of said tentative pitchangle P, said tentative roll angle R and said tentative yaw angle Φ toproduce specific modified values, said orientation angle calculator (60)delivers said specific modified values as that specified ones of saidroll angle γ, said pitch angle β and said yaw angle α, respectively,which are corresponding to said specific ones of said first throughthird integrated values ΣΔX(n), ΣΔ(n) and ΣΔZ(n), and said orientationangle calculator (60) delivers the remaining ones other than saidspecific ones of said first through third integrated values ΣΔX(n),ΣΔY(n) and ΣΔZ(n) as the remaining ones other than said specified onesof said roll angle β, said pitch angle β and said yaw angle α.
 48. Anorientation angle detector as claimed in claim 1, wherein said referenceco-ordinate is a three-dimensional co-ordinate having a vertical Z axisand two horizontal Y and X axes, and said detector co-ordinate isanother three-dimensional co-ordinates having three orthogonal axes Zs,Ys and Xs corresponding to said Z, Y and X axes, respectively, saidorientation angle is represented by Z-Y-X Euler's angle which iscomposed of three components of a yaw angle α being a rotational anglearound Z axis, a pitch angle β being a rotational angle around Y axis,and a roll angle γ being a rotational angle around X axis, saidorientation angle delivering only said yaw angle α and said pitch angleβ as a 2-D orientation angle, wherein said plurality of gyroscopes arefirst and second gyroscopes (302, 303) disposed in parallel with said Ysand Zs axes for measuring first and second angular velocities (Jy, Jz)around said Ys and Zs axes, respectively, said motion angle calculator(310′) calculating, from said first and second angular velocities (Jy,Jz), a Y-moving angle ΔY around the Y axis, and a Z-moving angle ΔZaround Z axis as two factors of said motion angle, and wherein said twoterrestrial magnetometers are first and second ones (401, 402) disposedin parallel with Xs and Ys axes for producing first and second magneticdetection signals (Mx, My), respectively, and said at least oneaccelerometer is one accelerometer (403) disposed in parallel with Xsaxis for producing an acceleration detection signal (Ax), said staticangle calculator (405′) calculating a tentative pitch angle P and atentative yaw angle Φ as said azimuthal deviation angle from said firstand second magnetic detection signals (Mx, My) and said accelerationdetection signal (Ax), said tentative pitch angle P and said tentativeyaw angle Φ being factors of said static angle, and wherein saidorientation angle calculator (60′) calculates an integrated value set offirst and second integrated values (ΣΔY, ΣΔZ) by time integration ofsaid Y-moving angle ΔY and Z-moving angle ΔZ and produces said 2-Dorientation angle (α, β) from said integrated value set (ΣΔY, ΣΔZ) andsaid static angle, said 2-D orientation angle being stored in anorientation angle memory (70).
 49. An orientation angle detector asclaimed in claim 48, wherein said first and second gyroscopes (302, 303)are Coriolis vibratory gyroscopes each having a piezoelectric vibrator,said first and second gyroscopes (302, 303) produce first and secondgyro outputs (Jy, Jz) representing the angular velocities around said Ysand Zs axes.
 50. An orientation angle detector as claimed in claim 49,which further comprises first and second high-pass filters (305, 306)coupled to said first and second Coriolis vibratory gyroscopes (302,303) for canceling offset voltages included in the first and second gyrooutputs (Jy, Jz) of said first and second Coriolis vibratory gyroscopesto produce first and second filter outputs, respectively.
 51. Anorientation angle detector as claimed in claim 50, wherein said motionangle calculator (310′) receiving said firsthand second filter outputsas first and second incoming signals to produce first and secondtime-serial moving angle signals (ΔY, ΔZ) representing said motionangle, said orientation angle calculator (60′) receiving said first andsecond time-serial moving angle signals (ΔY, ΔZ) to time-seriallyproduce said orientation angle, and said orientation angle memory (70)coupled to said orientation angle calculator (60′) for storing saidorientation angle time-serially delivered from said orientation anglecalculator (60′).
 52. An orientation angle detector as claimed in claim51, wherein said first and second time-serial moving angle signalsrepresent time-serial Y-moving angle ΔY(t), t=n, (n−1), (n−2), . . , 1,n−(n−1)=St, and time-serial ΔZ(t), said motion angle calculator (310′)calculates, Y-moving angle ΔY(n) and Z-moving angle ΔZ(n) at t=naccording to the following equations: $\begin{bmatrix}{\Delta \quad {Y(n)}} \\{\Delta \quad {Z(n)}}\end{bmatrix} = {\begin{bmatrix}1 & 0 \\0 & {{1/\cos}\quad {\beta \left( {n - 1} \right)}}\end{bmatrix} \times \begin{bmatrix}{{Jy}(n)} \\{{Jz}(n)}\end{bmatrix}}$

where (n−1) is the pitch angle β at t=n−1 which are read out from saidorientation angle memory (70), Jy(n) and Jz(n) being said first andsecond incoming signals at t=n.
 53. An orientation angle detector asclaimed in claim 51, further comprising first and second oscillationremovers (321, 322) connecting said first and second high-pass filters(305, 306) with said motion angle calculator (310′), respectively, forremoving a noise included in said first and second gyro outputs (Jy, Jz)due to oscillation of said detector itself.
 54. An orientation angledetector as claimed in claim 53, wherein said first and secondoscillation removers (321, 322) process to make first and second timeaverages of said first and second filter outputs over a predeterminedtime period, respectively, and to compare said first and second timeaverages with first and second predetermined threshold values,respectively, said first and second oscillation removers (321, 322)temporarily removing parts of said first and second filter outputs whensaid first and second time averages are smaller than said first andsecond threshold values, respectively, to produce first and secondprocessed signals, said first and second processed signals beingsupplied to said motion angle calculator (310′) as said first and secondincoming signals.
 55. An orientation angle detector as claimed in claim48, wherein said static angle calculator (405′) comprises a firstanalogue-to-digital convertor (40501) coupled to said accelerometer(403) for sampling said acceleration detection signals (Ax) everysampling intervals St to produce a time-serial digital accelerationsignal, a tentative pitch angle calculator (40504) coupled to said firstanalogue convertor (40501) for calculating said tentative pitch angle Pfrom said time-serial digital acceleration signal.
 56. An orientationangle detector as claimed in claim 55, wherein said time-serial digitalacceleration signal is represented by Ax(t), where t=n, n−1, . . . , 1,St=n−(n−1), said tentative pitch angle calculator (40504) calculates thetentative pitch angle P according to the following equation: P(n)=sin⁻¹Ax(n), and where P(n), and Ax(n) representing P, and Ax(t) at t=n. 57.An orientation angle detector as claimed in claim 55, wherein saidstatic angle calculator (405′) comprises second and thirdanalogue-to-digital convertors (40505, 40506) coupled to said first andsecond terrestrial magnetometers (401, 402) for sampling said first andsecond magnetic detection signals Mx and My every sampling intervals Stto produce first and second time-serial digital magnetic detectionsignals, an azimuth calculator (40508) coupled to said second and thirdanalogue-to-digital convertors (40505, 40506) for calculating from saidfirst and second time-serial digital magnetic detection signals anazimuth ψ to produce a tentative yaw angle as said azimuthal deviationangle.
 58. An orientation angle detector as claimed in claim 57, whichfurther comprises a static angle correction definer (50′) coupled tosaid static angle calculator (405′) and said orientation anglecalculator (60′) for defining accuracy of said static angle (P, Φ) toproduce a correction signal, and wherein said orientation anglecalculator (60′) is responsive to said correction signal to calculate acorrection value and corrects said integrated value set by saidcorrection value to produce a modified value set, said modified valueset being delivered as said 2-D orientation angle (α, β).
 59. Anorientation angle detector as claimed in claim 58, wherein saidorientation angle calculator (60′) calculates first and secondintegrated values ΣΔY and ΣΔZ according to the following equations:ΣΔY(n)=β(n−1)+ΔY(n), and ΣΔZ(n)=α(n−1)+ΔZ(n), where ΔY(n) and ΔZ(n) areY-moving angle ΔY and Z-moving angle ΔZ, respectively, at a time t=n,and β(n−1) and α(n−1) are said pitch angle β and said roll angle α,respectively at a time t=n−1, said β(n−1) and α(n−1) being read out fromorientation angle memory (70).
 60. An orientation angle detector asclaimed in claim 59, wherein said orientation angle calculator (60′)calculates, upon receiving said correction signal, first and secondangular errors Ey and Ez by the following equations: Ey=ΣΔY(n)−P(n), andEz=ΣΔZ(n)−Φ(n), said orientation angle calculator (60′) furtherdetermines first and second correction values C1 and C2 as saidcorrection values from said first and second angular errors andcalculates said first and second modified values as said pitch angle βand said yaw angle α by the following equations: β=ΣΔY(n)−C 1, andα=ΣΔZ(n)−C 2, where C1 and C2 are selected to be values smaller thansaid first and second angular errors Ey, and Ez, respectively.
 61. Anorientation angle detector as claimed in claim 60, wherein said C1 andC2 are determined by k1×Ey and k2×Ez, respectively, where k1 and k2 areconstant values smaller than
 1. 62. An orientation angle detector asclaimed in claim 59, wherein said correction definer (50′) is coupled tosaid motion angle calculator (310′), said correction definer (50′)calculates a moving average of variation of said tentative pitch angleP(t), a moving average of said Y-moving angle ΔY(t), a moving average ofvariation of said tentative yaw angle Φ(t), and a moving average of saidZ-moving angle ΔZ(t) and defines said tentative pitch angle P(n) andsaid tentative yaw angle Φ(n) to be accurate when the following twoequations (1) and (2) is fulfilled: [P(n)−P(n−1)]/C−[ΔY(n)+ΔY(n−1)+ . .. +ΔY(n−C+1)]/C≈0  (1) and, [Φ(n)−Φ(n−1)]/C−[ΔZ(n)+ΔZ(n−1)+ . . .+ΔZ(n−C+1)]/C≈0  (2).
 63. An orientation angle detector as claimed inclaim 62, wherein said correction definer (50′) produces said correctionsignal when at least one of said tentative pitch angle and saidtentative yaw angle Φ(n) is defined accurate, and said correctiondefiner (50′) produces a non-correction signal when none of saidtentative pitch angle P(n) and said tentative yaw angles Φ(n) is definedaccurate, said orientation angle calculator (60′) is responsive to saidnon-correction signal to produces said integrated value set (ΣΔY(n) andΣΔZ(n)) as said 2-D orientation angle (β, α).
 64. An orientation angledetector as claimed in claim 62, wherein said correction definer (50′),upon defining accuracy of a particular one of said tentative pitch angleP and said tentative yaw angle Φ, produces, as said correction signal,an indication signal representative of that particular one of saidtentative pitch angle P and said tentative yaw angle Φ which is definedaccurate, and wherein said orientation angle calculator (60′) isresponsive to said indication signal to modify a specific one of saidfirst and second integrated values ΣΔY(n) and ΣΔZ(n) corresponding tosaid particular one of said tentative pitch angle P and said tentativeyaw angle Φ by use of said tentative pitch angle P and said tentativeyaw angle Φ to produce a specific modified value, said orientation anglecalculator (60′) delivers said specific modified value as that specifiedone of said pitch angle β and said yaw angle α, respectively, which iscorresponding to said specific one of said first and second integratedvalues ΣΔY(n) and ΣΔZ(n), and said orientation angle calculator (60′)delivers the remaining one other than said specific one of said firstand second integrated values ΣΔY(n) and ΣΔZ(n) as the remaining oneother than said specified one of said pitch angle β and said yaw angleα.